package com.lai.hospital.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.lai.hospital.dto.DoctorBackDTO;
import com.lai.hospital.dto.DoctorScheduleDTO;
import com.lai.hospital.dto.DoctorSchedulePreviewDTO;
import com.lai.hospital.entity.DoctorSchedule;
import com.lai.hospital.vo.ConditionVO;
import com.lai.hospital.vo.DoctorSchedulePreviewVO;
import com.lai.hospital.vo.DoctorScheduleVO;
import com.lai.hospital.vo.PageResult;

import java.util.List;

/**
 * @author : lai
 * @version V1.0
 * @Project: hospital-springboot
 * @Package com.lai.hospital.service
 * @Description: 医生排班服务
 * @date Date : 2023年02月16日 23:47
 */
public interface DoctorScheduleService extends IService<DoctorSchedule> {
    /**
     * 分页获取所以医生的一周排班列表
     * @param conditionVO 条件
     * @return
     */
    PageResult<DoctorBackDTO> listDoctorScheduleWeek(ConditionVO conditionVO);

    /**
     *  添加医生排班信息
     * @param doctorScheduleVO 医生排班信息
     * @return
     */
    void saveDoctorSchedule(DoctorScheduleVO doctorScheduleVO);

    /**
     * 根据医生id和时间获取排班信息
     * @return
     */
    List<DoctorSchedulePreviewDTO> getDoctorScheduleByDoctorIdAndTime(DoctorSchedulePreviewVO doctorSchedulePreviewVO);
}
